Human presence detection

ABSTRACT

Methods and a computing device are disclosed. A computing device may aggregate a number of inputs indicative of a presence or an absence of a human being within a proximity of the computing device. A source of at least one of the inputs may be a human presence sensor. A source of other inputs may provide an indication of the presence of a human being with corresponding estimated probabilities or corresponding estimated reliabilities which may provide an estimate of an accuracy of respective indications. In some embodiments, if any of the number of inputs indicate the presence of a human being, the computing device may determine that a human being is present. In other embodiments, if a corresponding estimated probability or reliability of an input is less than a predetermined value, then the input may be discarded when determining whether a human being is present.

CROSS-REFERENCE TO RELATED APPLICATIONS

The present application is a Continuation Application of, and takesbenefit of, application Ser. No. 12/968246, filed on 14 Dec. 2010,entitled HUMAN PRESENCE DETECTION—which is hereby incorporated in itsentirety by reference.

BACKGROUND

Operating systems in modern computing devices implement logic to managepower states of various components and to lock-down access to thecomputing device. One part of the implemented logic concerns a proximityof a user with respect to a computing device.

Many existing computing devices rely solely on detecting input from akeyboard, a pointing device, a touch screen, or other input device bywhich a presence of a human being may be inferred. Each time a computingdevice detects the input, a timer may be started. The timer may be setfor a time period, such as, for example, 15 minutes, 30 minutes, oranother time period. Upon expiration of the timer, the computing devicedetermines that a human being is not present at the computing device.However, a human being may be present and using a computing device withlong periods of input inactivity. For example, a user may performactivities including, but not limited to, reading content or watching avideo without providing any input. In such situations, the computingdevice may wrongly determine that the user is not present. As a result,various features of the computing device, which depend on making adetermination regarding whether a human being is present or not presentwithin a given proximity of the computing device, may not provide aconsistent user experience.

SUMMARY

This Summary is provided to introduce a selection of concepts in asimplified form that is further described below in the DetailedDescription. This Summary is not intended to identify key features oressential features of the claimed subject matter, nor is it intended tobe used to limit the scope of the claimed subject matter.

In an embodiment consistent with the subject matter of this disclosure,a number of inputs may be received by a computing device. At least someof the inputs may indicate a presence or absence of the human beingwithin a given proximity of the computing device. A source of one ormore of the inputs may be a human presence sensor, which detects thepresence or the absence of a human being within the given proximity ofthe computing device. In some embodiments, the human presence sensor mayinclude a hybrid ambient light sensor with reflective infrared proximityand presence detection.

An inference of a presence or an absence of a human being may be madewith respect to one or more others of the inputs. A source of the one ormore others of the inputs may include, but not be limited to, anorientation change sensor, a keyboard, a pointing device, a touchscreen, an interactive application, or any other source indicative of apresence of the human being.

In some embodiments, if any of the inputs indicate that a human being ispresent within the proximity of the computing device, then the computingdevice may make a determination that the human being is present.

In other embodiments, each of the inputs that indicate that a humanbeing is present within the proximity of the computing device may have acorresponding estimated probability or a corresponding estimatedreliability. If any of the inputs that indicate that a human being ispresent have a corresponding estimated probability or a correspondingestimated reliability that is less than a given value, then those inputsmay be discarded when determining whether a human being is present orabsent within the proximity of the computing device.

In some embodiments, some inputs may have a corresponding estimatedprobability or a corresponding estimated reliability that deterioratesover a period of time.

DRAWINGS

In order to describe the manner in which the above-recited and otheradvantages and features can be obtained, a more particular descriptionis discussed below and will be rendered by reference to specificembodiments thereof which are illustrated in the appended drawings.Understanding that these drawings depict only typical embodiments andare not therefore to be considered to be limiting of its scope,implementations will be described and explained with additionalspecificity and detail through the use of the accompanying drawings.

FIG. 1 is a block diagram of an exemplary computing device which mayimplement embodiments consistent with the subject matter of thisdisclosure.

FIG. 2 is a block diagram of a portion of an exemplary embodiment havingthree human presence sensors.

FIG. 3 is a block diagram of a portion of another exemplary embodimenthaving three human presence sensors, an orientation sensor, and otherinputs indicative of a presence or an absence of a human being within aproximity of a computing device.

FIGS. 4-10 are flowcharts illustrating exemplary processing which may beperformed by a computing device in various embodiments consistent withthe subject matter of this disclosure.

DETAILED DESCRIPTION

Embodiments are discussed in detail below. While specificimplementations are discussed, it should be understood that this is donefor illustration purposes only. A person skilled in the relevant artwill recognize that other components and configurations may be usedwithout parting from the spirit and scope of the subject matter of thisdisclosure.

Overview

In various embodiments, a number of inputs may be received, which mayindicate a presence or an absence of a human being within a givenproximity of a computing device. At least one of the inputs is from ahuman presence sensor, which detects the presence or the absence of ahuman being within a given proximity of a computing device. In someembodiments, the human presence sensor may detect a human being by usingreflective infrared light to perform reflective infrared proximity andpresence detection. That is, in some embodiments, the human presencesensor may detect a human being by analyzing reflected infrared light.

Other sensors may also be employed including, but not limited to, anorientation change sensor for detecting a change in orientation of thecomputing device or a component thereof, such as a change from aportrait orientation to a landscape orientation, or vice versa. Otherinputs may be received from a keyboard, a pointing device (including,but not limited to, a computer mouse, a joy stick or a touch screen), aninteractive application, or any other source of input indicative of apresence of a human being. In this patent application, a touch inputdevice refers to any device that requires a human being to touch thedevice to provide input. Examples of a touch input device include, butare not limited to, a keyboard, a pointing device, and a touch screen.

In some implementations, if any of at least one human presence sensorindicates that a human being is present within a proximity of acomputing device, then the computing device may determine that the humanbeing is present. If, in addition to the at least one human presencesensor, one or more other inputs are provided that are indicative of apresence or an absence of the human being, then if any of the inputsindicate a presence of the human being, then the computing device maydetermine that the human being is present within the proximity of thecomputing device.

In some embodiments, each of the inputs may indicate a presence or anabsence of a human being within a proximity of the computing device anda respective estimated probability of the presence or the absence of thehuman being. If any of the inputs indicate that the human being ispresent within the proximity of the computing device and the respectiveestimated probability of the presence of the human being is greater thanor equal to a predetermined value, then the computing device maydetermine that the human being is present within the proximity of thecomputing device. Otherwise, the computing device may determine that thehuman being is not present.

If the computing device determines that the human being is present, thecomputing device may perform one or more first actions. If the computingdevice determines that the human being is not present, the computingdevice may perform one or more second actions.

In a variation of the embodiments, a respective estimated probabilityregarding one or more inputs indicating a presence of a human being maydeteriorate over a given period of time.

In another variation of the embodiments, one or more inputs may indicatea presence or absence of a human being with a reliability which maydeteriorate over a given period of time. The one or more inputs thathave a reliability less than a threshold value may be discarded whendetermining whether the human being is present or absent.

Exemplary Computing Device

FIG. 1 is a block diagram of an exemplary computing device 100, whichmay be employed to implement one or more embodiments consistent with thesubject matter of this disclosure. Exemplary computing device 100 may bea personal computer (PC), a notebook computer, a handheld computingdevice, a server, or other type of computing device. Exemplary computingdevice 100 may include a processor 102, a memory 104, a storage medium106, one or more sensors 108, a keyboard 110, a pointing device 112, adisplay device 114 and a communication bus 116 connecting processor 102with memory 104, storage medium 106, one or more sensors 108, keyboard110, pointing device 112 and display device 114. Some embodiments ofcomputing device 100 may further include a hardware logic component,including, but not limited to, an application specific integratedcircuit (ASIC (not shown) and/or a field programmable gate array (FPGA)(not shown) that may be combined with instructions in memory 104 tocause computing device 100 to perform a method.

Processor 102 may include one or more conventional processors thatinterpret and execute instructions. Memory 104 may include a RandomAccess Memory (RAM), a Read Only Memory (ROM), and/or other type ofdynamic or static storage medium that stores information andinstructions for execution by processor 102. The RAM, or the other typeof dynamic storage medium, may store instructions as well as temporaryvariables or other intermediate information used during execution ofinstructions by processor 120. The ROM, or the other type of staticstorage medium, may store static information and instructions forprocessor 102.

Storage medium 106 may include any type of medium capable of storinginformation and/or instructions in a machine-readable form.

One or more sensors 108 may include, but not be limited to, a humanpresence sensor and an orientation sensor. The orientation sensor mayinclude an accelerometer sensor which detects a change in orientation ofcomputing device 100 or a component of computing device 100 including,but not limited to, a display device of computing device 100. Forexample, the orientation sensor may sense a change in orientation from aportrait orientation to a landscape orientation or vice versa. The humanpresence sensor may include, but not be limited to, a hybrid ambientlight sensor with reflective infrared proximity and presence detection,a capacitive proximity sensor, or a short-range wireless transceiver. Anexample of a short-range wireless transceiver may include, but not belimited to, a Bluetooth® transceiver (Bluetooth is a registeredtrademark of Bluetooth Sig., Inc. of Bellevue, Wash.). When using theshort-range wireless transceiver as a human presence sensor, a humanbeing may carry a short-range wireless transmitter such that theshort-range wireless transceiver detects a signal transmitted from theshort-range wireless transmitter when the human being is within a givenproximity of computing device 100.

Keyboard 110 may be a conventional keyboard or a soft keyboard displayedon a touch screen. Pointing device 112 may be any device by which a usermay move a cursor on a display screen. Examples of pointing device 112may include, but not be limited to, a computer mouse, a touchpad and ajoystick. A touch input device 114 may include any device that a usertouches in order to provide input to a computing device. Examples oftouch input devices 114 may include, but not be limited to, keyboard110, pointing device 112, and a touch screen (not shown).

Although FIG. 1 only shows three sensors 108, other embodiments of acomputing device may include one sensor 108, two sensors 108, or manysensors 108, as well as other types of input devices.

Exemplary Embodiments

FIG. 2 illustrates an exemplary embodiment having three human presencesensors 202, 204, 206. In the exemplary embodiment of FIG. 2, at leastone of human presence sensors 202, 204, 206 may be a hybrid ambientlight sensor with reflective infrared proximity and presence detection.Each of sensors 202, 204, 206, may be in a sensor state of “Ready” or“Not Ready”. If a sensor is in the “Ready” sensor state, then the sensormay provide a human presence indication of “Present” or “Not Present”.If the sensor is in the “Not Ready” sensor state, then the sensor mayprovide a human presence indication of “Unknown”. A sensor having asensor state of “Not Ready” may not be used to determine whether a humanbeing is present or not present. Rows of Table 1 illustrate possiblesensor states and human presence indications with respect to humanpresence sensors, as discussed above.

TABLE 1 Sensor State User Presence Indication Ready Present Ready NotPresent Not Ready Unknown

In the embodiment of FIG. 2, if any inputs from sensors 202, 204, 206provide an indication of “Present”, then an aggregated or collectivepresence state output may provide an indication of “Present”.

FIG. 3 illustrates another exemplary embodiment 300, which includeshuman presence sensors 302, 304, 306, an aggregator 318, inputs from anapplication 308, a raw input thread 310, a workstation lock 312, akeyboard 314, a pointing device 316, other touch input device 320, andan orientation sensor 322.

A collective presence state 326 from human presence sensors 302, 304,306 may be provided to aggregator 318. If any one of human presencesensors 302, 304, 306 indicate that a human being is present, thencollective presence state 326 may indicate that the human being ispresent.

Inputs from application 308, raw input thread 310, keyboard 314,pointing device 316, other touch input devices 320, and an orientationsensor 322 may indicate a presence of a human being. If any one ofcollective presence state 326 and the inputs from application 308, rawinput thread 310, workstation lock 312, keyboard 314, pointing device316, other touch input device 320, or orientation sensor 322 indicatethat a human being is present, then aggregator 318 may determine that ahuman being is present and may provide an input to an application 324informing application 324 that the human being is present. Application324 may cause one or more actions to be performed by a computing deviceupon being informed that the human being is present. In anotherembodiment, application 324 may cause one or more actions to beperformed by the computing device upon being informed that the humanbeing is not present.

In some embodiments, application 308 may be an interactive application.In other embodiments, application 308 may be another type of applicationincluding, but not limited to, a media player. Raw input thread 310 mayinclude input from a user via any type of input device. Keyboard 314 mayinclude, but not be limited to, a conventional keyboard or a softkeyboard displayed on a touch screen. Pointing device 316 may include,but not be limited to, a computer mouse, a touchpad, a joystick, or afinger or a stylus on a touch screen. Orientation sensor 322 may includean accelerometer for detecting a change in orientation, such as, forexample, portrait to landscape, or landscape to portrait.

Each of the inputs to aggregator 318 may have a corresponding estimatedprobability or estimated reliability. For example, an estimatedprobability or an estimated reliability with respect to human presencesensors 302, 304, 306 indicating “Present” may be 100%. That is, in thisembodiment, an estimated probability, or an estimated reliability withrespect to any one of human presence sensors 302, 304, 306 correctlyindicating that a human being is present may be 100%. However, anestimated probability, or an estimated reliability with respect to oneor more other inputs indicating a presence of a human being mayinitially be 100%, but may deteriorate over a given time period, as willbe explained in more detail later.

Workstation lock 312 may include, but not be limited to, a button, aswitch, a soft button on a display, which when pressed or selectedcauses a computing device to be locked until, for example, a certainpassword is provided or another action is performed by a user. In someembodiments, workstation lock 312 may include a remote control signal oran application input, which, when received, causes a computing device tobe locked until, for example, a certain password is provided or anotheraction is performed by a user. When workstation lock 312 is activated tolock the computing device, workstation lock 312 may provide an input toaggregator 318 indicating that a human being is not present and anestimated probability or an estimated reliability with respect to theinput from workstation lock 312 may initially be 100%, but maydeteriorate over a period of time.

Although FIG. 3 illustrates an embodiment with three human presencesensors 302, 304, 306, as well as other inputs, other embodiments mayhave a different number of human presence sensors or other types ofinputs.

FIG. 4 is a flowchart illustrating exemplary processing for determiningwhether a human being is present within a proximity of a computingdevice in an embodiment consistent with the subject matter ofdisclosure. The process may be implemented by the computing device andmay begin with the computing device aggregating a number of inputs whichmay indicate a presence or an absence of a human being within a givenproximity of the computing device (act 402). One or more of the inputsmay be from a human presence sensor. Other inputs may be from a numberof sources including, but not limited to, an application, a raw inputthread, a keyboard, a pointing device, an orientation sensor, or anytouch input device. In some embodiments, the human presence sensor mayinclude a hybrid ambient light sensor with either reflective infraredproximity and presence detection or a capacitive proximity sensor forhuman presence detection.

The computing device may then determine whether any of the inputsindicate that a human being is present (act 404). If any of the inputsindicate that a human being is present, then the computing device mayobtain corresponding estimated probabilities with respect to any of theinputs that indicate a human being is present (act 406). In thisembodiment, when an input first indicates that a human being is present,a corresponding estimated probability with respect to the input may be100% or another value. Some inputs, including, but not limited to,inputs from hybrid ambient light sensors with reflective infraredproximity presence detection, may always have a respective correspondingestimated probability of 100% when the inputs indicate that a humanbeing is present. Other inputs, including, but not limited to, inputsfrom a keyboard, a pointing device, a raw input thread, an orientationsensor, or an interactive application, may initially have a respectivecorresponding estimated probability of 100% when the inputs firstindicate that a human being is present. However, the estimatedprobability of the other inputs may deteriorate over a period of time.

The computing device may then determine whether any of the estimatedprobabilities, with respect to the inputs that indicate a human being ispresent, are greater than or equal to a predetermined value, such as,for example, 75%, 80%, or another value (act 408). If any of theestimated probabilities are greater than or equal to the predeterminedvalue, then the computing device may determine that a human being ispresent (act 410).

The computing device may then determine whether a transition is beingmade with respect to changing from a “Not Present” indication to a“Present” indication (act 412). If the transition is not being made,then the procedure may be completed. Otherwise, the computing device maybehave in a predetermined manner, including, but not limited to,performing one or more first actions (act 414). In some embodiments, anindication that a human being is present may be provided to anapplication executing on the computing device. When the applicationreceives the indication that a human being is present, the applicationmay perform the one or more first actions. The one or more first actionsmay include, but not be limited to, locking a workstation, such that auser may not be permitted to enter any input until a particular useraction is taken, such as, for example, entering a password or anotherparticular user action.

If, during act 404, no inputs are determined to indicate that a humanbeing is present, or during act 408, no estimated probabilities aregreater than or equal to the predetermined value, then the processdevice may determine that a human being is not present (act 416). Thecomputing device may then determine whether a transition is being madewith respect to changing from a “Present” indication to a “Not Present”indication (act 418). If the transition is not being made, then theprocess may be complete. Otherwise, the computing device may behave in asecond predetermined manner, including, but not limited to, performingone or more second actions (act 420). In some embodiments, an indicationthat a human being is not present may be provided to a secondapplication executing on the computing device. When the secondapplication receives the indication that a human being is not present,the second application may perform the one or more second actions. Insome embodiments, the one or more second actions may include, but not belimited to, prompting a user to perform an action for unlocking thecomputing device.

FIG. 5 is a flowchart illustrating an exemplary process fordeteriorating, over a time period, an estimated probability with respectto one of the inputs, indicating that a human being is present. Theprocess may begin with a computing device receiving an input indicatingthat a human being is present (act 502). The computing device may set acorresponding estimated probability, with respect to a presence of ahuman being, to 100% (act 504).

The computing device may then start a timer to time a predeterminedtimer interval (act 506). The timer interval may be 30 seconds, 1minute, or another timer interval. The computing device may thendetermine whether the timer interval has passed (i.e., the timer hasexpired) (act 508). When the computing device determines that the timerhas expired, the computing device may decrease the correspondingestimated probability by a predetermined amount, such as, for example,5%, 10%, or another value (act 510). The computing device may thendetermine whether the corresponding estimated probability is less thanor equal to a predetermined value, such as, for example, 75%, 50%, oranother predetermined value (act 512). If the computing devicedetermines that the estimated probability is not less than or equal tothe predetermined value, then acts 506-512 may be performed again.

If, during act 512, the computing device determines that thecorresponding estimated probability is less than or equal to thepredetermined value, then the computing device may set the estimatedprobability, with respect to the detecting a presence of a human being,to 0% (act 514) and may set the indication associated with the input toindicate that a human being is not present (act 516). The process maynow be completed.

FIG. 6 illustrates exemplary processing with respect to a variation ofthe procedure illustrated by FIG. 5. The process may begin with thecomputing device receiving an input indicating that a human being ispresent (act 602). The computing device may then set a correspondingestimated probability, with respect to a presence of a human being, to100% (act 604). The computing device may then start a timer for apredetermined time interval, such as, for example, five minutes, 15minutes, 30 minutes, or another predetermined time interval (act 606).

During act 608, the computing device may determine whether the timer hasexpired, indicating that the predetermined time interval has passed. Ifthe computing device determines that the predetermined time interval haspassed, the computing device may set the estimated probability, withrespect to the presence of a human being, to 0% (act 610). The computingdevice may then set the indication associated with the input to indicatethat a human being is not present (act 612). The process may now becompleted.

FIG. 7 is a flowchart illustrating exemplary processing for determiningwhether a human being is present within proximity of a computing devicein another embodiment consistent with the subject matter of thisdisclosure. The process may be implemented on the computing device andmay begin with the computing device aggregating a number of inputs whichmay indicate a presence or an absence of a human being within a givenproximity of the computing device (act 702). One or more of the inputsmay be from a human presence sensor. Other inputs may be from a numberof sources including, but not limited to, an application, a raw inputthread, a keyboard, a pointing device, an orientation sensor, or anytouch input device. In some embodiments, the human presence sensor mayinclude a hybrid ambient light sensor with reflective infrared proximityand presence detection or a capacitive proximity sensor for humanpresence detection.

The computing device may then discard unreliable inputs (act 704). Inthis embodiment, each of the inputs may have a corresponding reliabilityvalue with respect to either a presence of a human being or an absenceof a human being. An unreliable input may be an input with a reliabilityvalue that is less than a threshold value. The threshold value may be50%, 60%, or some other threshold value.

After discarding the unreliable inputs, the computing device may thendetermine whether any of the un-discarded inputs indicate that a humanbeing is present (act 706). If at least one of the inputs indicate thata human being is present, then the computing device may determine that ahuman being is present (act 708). The computing device may thendetermine whether a transition is occurring from an indication of “NotPresent” to an indication of “Present” (act 710). If the computingdevice determines that the transition is occurring, then the computingdevice may perform one or more first actions (act 712). The one or morefirst actions may include, but not be limited to, backlighting a displayscreen, or powering on a storage medium device. The process may then becompleted.

If, during act 706 the computing device determines that no un-discardedinput indicates that a human being is present, then the computing devicemay determine that a human being is not present (act 714). The computingdevice may then determine whether a transition is occurring from anindication of “Present” to an indication of “Not Present” (act 716). Ifthe computing device determines that the transition from an indicationof “Present” to an indication of “Not Present” is occurring, then thecomputing device may perform one or more second actions (act 718). Theone or more second actions may include, but not be limited to, lockingthe computing device such that no input may be entered, turning off adisplay device, or powering off a storage medium device. The process maythen be completed.

In one embodiment, an application may perform the one or more firstactions when an input is provided to an application indicating atransition from the “Not Present” indication to the “Present”indication. Similarly, the application or a second application mayperform the one or more first actions when an input is provided to theapplication or the second application indicating a transition from the“Present” indication to the “Not Present” indication.

FIG. 8 is a flowchart illustrating exemplary processing performed by acomputing device in an embodiment consistent with the subject matter ofthis disclosure. The exemplary processing decreases an estimatedreliability value with respect to an input that indicates that a humanbeing is present. In this embodiment, only some of the inputs may havetheir corresponding estimated reliability values decreased over time.Other inputs, including, but not limited to, at least some humanpresence sensors, may not have their corresponding estimated reliabilityvalues decreased over time.

The processing may begin with a computing device receiving an inputindicating a that a human being is present (act 802). In this exemplaryprocess, the input is from a source which has decreasing reliabilityover time. In some embodiments, the source of the input having adecreasing reliability may include, but not be limited to, a raw inputthread, a touch input device, or an orientation sensor.

After receiving the input, the computing device may set an estimatedreliability associated with the received input to 100% or another value(act 804). The computing device may then start a timer for apredetermined timer interval (act 806). The timer interval may be 10seconds, 1 minute, or another timer interval. The computing device maythen determine whether the timer interval has passed (i.e., the timerexpired) (act 808).

If the timer interval has passed, then the computing device may decreasethe estimated reliability associated with the received input by a givenamount (act 810). The given amount may be 5%, 10%, 15%, or some othervalue. The computing device may then determine whether the estimatedreliability associated with the received input is less than or equal toa threshold value (act 812). The threshold value is a value, such thatwhen the estimated reliability is less than or equal to the thresholdvalue, the associated input may be considered to be unreliable. In someembodiments, the threshold value may be configurable.

If the computing device determines that the estimated reliability isless than or equal to the threshold value, then the process iscompleted. Otherwise, acts 806-812 may again be performed to start thetimer and decrease the estimated reliability by the given amount uponexpiration of the timer.

FIG. 9 is a flowchart that illustrates exemplary processing ofaggregated inputs in another embodiment consistent with the subjectmatter of this disclosure. The process may begin with a computing deviceaggregating a number of inputs which may indicate a presence or anabsence of a human being within a given proximity of the computingdevice (act 902). One or more of the inputs may be from a human presencesensor. Other inputs may be from a number of sources including, but notlimited to, an application, a raw input thread, a keyboard, a pointingdevice, an orientation sensor, or any touch input device. In someembodiments, the human presence sensor may include a hybrid ambientlight sensor with reflective infrared proximity and presence detection.

The computing device may discard unreliable inputs (act 904). In thisembodiment, each of the inputs that indicate that a human being iseither present or not present may have a corresponding reliability valueas indicated by a respective input. An unreliable input may be an inputwith a reliability value that is less than a threshold value. Thethreshold value may be 50%, 60%, or some other threshold value.

After discarding the unreliable inputs, the computing device may thendetermine whether any of the un-discarded inputs indicate that a humanbeing is present (act 906). If, during act 906, the computing devicedetermines that none of the un-discarded inputs indicate that a humanbeing is present, then the computing device may determine that a humanbeing is not present (act 908). The computing device may then determinewhether a transition is being made from detecting that a human being ispresent to the detecting that a human being is not present (act 910). Ifthe computing device determines that the transition is being made, thenthe computing device may perform one or more second actions (act 912).As mentioned earlier, a “Not Present” indication may be provided to asecond application, which may then perform the one or more secondactions (act 912). The process may then be completed.

If, during act 906, the computing device determines that at least one ofthe inputs indicate that a human being is present, then the computingdevice may determine whether any un-discarded inputs that indicate ahuman being is not present have a higher estimated reliability then oneof the inputs that indicate that a human being is present with anestimated reliability greater than or equal to any estimated reliabilityof any other of the inputs indicating that a human being is present (act914). If so, then act 908-912 may be performed by the computing device.

If, during act 914, the computing device determines that none of theun-discarded inputs that indicate a human being is not present have anestimated reliability greater than the highest estimated reliabilitywith respect to any of the inputs that indicate that a human being ispresent, then the computing device may determine that a human being ispresent (act 916). The computing device may then determine whether atransition is being made from determining that a human being is notpresent to determining that a human being is present (act 918). If, thecomputing device determines that the transition is being made fromdetermining that a human being is not present to determining that ahuman being is present, then the computing device may perform one ormore first actions (act 920). As mentioned earlier, a “Present”indication may be provided to an application, which may then perform theone or more first actions. The process may now be completed.

FIG. 10 is a flowchart illustrating an exemplary process which may beperformed by a computing device in some embodiments. The process maybegin with receiving an input indicating that a human being is notpresent (act 1002). In some embodiments, some of the inputs may indicatethat a human being is not present. One example includes, but is notlimited to, an input indicating that the computing device or workstationis locked by a user. After receiving the input, the computing device mayset a corresponding estimated reliability of the input to 100% oranother value (act 1004), thus indicating that a completely reliableinput is received indicating that a human being is present within aproximity of the computing device.

The computing device may then start a timer to time a timer interval(act 1006). The timer interval may be 10 seconds, 30 seconds, oneminute, two minutes, or another value. The computing device may thendetermine whether the timer interval has passed (i.e., the timerexpired) (act 1008). If the timer interval expired, then the computingdevice may decrease the corresponding estimated reliability of the inputby a given amount, such as, for example, 1%, 5%, 10%, or another givenamount (act 1010).

The computing device may then determine whether the correspondingestimated reliability of the input is less than or equal to a thresholdvalue (act 1012). The threshold value may be 50%, 55%, or another value.If the corresponding estimated reliability is determined to be less thanor equal to the threshold value, then the corresponding estimatedreliability may be set to 0 (act 1014) and the process may be completed.Otherwise, the computing device may repeat acts 1006-1012.

Conclusion

Although the subject matter has been described in language specific tostructural features and/or methodological acts, it is to be understoodthat the subject matter in the appended claims is not necessarilylimited to the specific features or acts described above. Rather, thespecific features and acts described above are disclosed as exampleforms for implementing the claims.

Other configurations of the described embodiments are part of the scopeof this disclosure. For example, in other embodiments, an order of actsperformed by a process may be different and/or may include additional orother acts. In some embodiments, one or more of the inputs may have ahigher priority than others of the inputs, such that an input having thehigher priority may cause a lower priority input to be discarded. Insome other embodiments, a user may be permitted to configure one or moreof the inputs to be discarded when determining whether a human being isor is not present. Such a feature may be useful when the user wishes todiscard an input from a source that is defective and falsely indicatesthat a human being is present or not present.

Accordingly, the appended claims and their legal equivalents defineembodiments, rather than any specific examples given.

We claim as our invention:
 1. A machine-implemented method of detectinga presence or an absence of a human being, the machine-implementedmethod comprising: aggregating a plurality of inputs, at least one ofthe plurality of inputs being from a human presence sensor for detectingthe presence or the absence of the human being within a given proximityof a computing device, wherein at least one input is an indication froma short-range wireless transceiver in the possession of the human being;discarding a set of said plurality of inputs having a reliability lessthan a threshold value; obtaining corresponding estimated probabilitiesof the presence of the human being from the undiscarded inputs thatindicate the presence of the human being; determining that the humanbeing is present when any of the obtained estimated probabilities isgreater than a predetermined value; and causing a computing device tobehave in a predetermined manner when the determining determines thatthe human being is absent present, wherein the machine-implementedmethod is performed by the computing device.
 2. The method of claim 1wherein said short-range wireless transceiver is a Bluetooth-enableddevice.
 3. The method of claim 2 wherein said Bluetooth-enabled deviceis paired with computing device, indicating the presence of the humanbeing.
 4. The method of claim 2 wherein at least a second input is aninput from an application, the application residing on theBluetooth-enabled device in the possession of the human being.
 5. Themethod of claim 4 wherein one of the actions performed by the computingdevice is a workstation lock when the computer device detectsindications from an application residing on the Bluetooth-enabled devicein the possession of the human being.
 6. A computing device comprising:at least one processor; and a memory connected to the at least oneprocessor; at least one item from a group consisting of a memory and acombination of the memory and at least one hardware logic component, theat least one item being configured to cause the computing device toperform a method comprising: aggregating a plurality of inputs, at leastone of the plurality of inputs being from a respective human presencesensor for detecting a presence of a human being within a givenproximity of the computing device, wherein at least one input is anindication from a short-range wireless transceiver in the possession ofthe human being; discarding a set of said plurality of inputs having areliability less than a threshold value; determining whether the humanbeing is present or absent, the determining determines that the humanbeing is present when any of the at least one of the plurality ofundiscarded inputs indicates that the human being is present; andcausing the computing device to perform one or more actions when thehuman being is either determined to be present or is determined to beabsent.
 7. The computing device of claim 6, wherein at least a secondone of the plurality of inputs is provided by an application, and thecorresponding estimated probability of the presence or the absence ofthe human being, with respect to the at least a second one of theplurality of inputs, deteriorates over time after the applicationprovides the at least a second one of the plurality of inputs.
 8. Thecomputing device of claim 7 wherein said application residing on theshort-range wireless transceiver in the possession of the human being.9. The computing device of claim 6, wherein the respective humanpresence sensor provides an input indicating one from a group consistingof present, not present, and unknown.
 10. The computing device of claim6, wherein the human presence sensor performs reflective infraredproximity and presence detection.
 11. The computing device of claim 6wherein said short-range wireless transceiver is a Bluetooth-enableddevice.
 11. The computing device of claim 11, wherein at least a secondone of the inputs is from an application, the application residing onthe Bluetooth-enabled device in the possession of the human being. 12.The computing device of claim 6, wherein the at least some of theplurality of inputs are from devices including one or more devices froma group consisting of a touch input device and an orientation sensor.13. A machine-implemented method of detecting a presence or an absenceof a human being, the machine-implemented method comprising: aggregatinga plurality of inputs, at least one of the plurality of inputs beingfrom a human presence sensor for detecting the presence or the absenceof the human being within a given proximity of a computing device,wherein at least one input is an indication from a short-range wirelesstransceiver in the possession of the human being; obtainingcorresponding estimated probabilities of the presence of the human beingwith respect to ones of the plurality of inputs that indicate thepresence of the human being; determining that the human being is presentwhen any of the obtained estimated probabilities is greater than apredetermined value, wherein the reliability of at least some of theplurality of inputs deteriorates over a predetermined time period afterdetection of the human being; and the determining whether the humanbeing is present or absent further comprises discarding ones of the atleast some of the plurality of inputs having a reliability less than athreshold value when performing the determining; and causing a computingdevice to behave in a predetermined manner when the determiningdetermines that the human being is absent, wherein themachine-implemented method is performed by the computing device.
 14. Themachine-implemented method of claim 13, wherein the human presencesensor provides an input indicating one of a group, said groupcomprising: present, not-present, and unknown.
 15. Themachine-implemented method of claim 13, wherein: the human presencesensor performs reflective infrared proximity and presence detection.16. The machine-implemented method of claim 15, wherein thecorresponding estimated probability of the presence of the human being,with respect to the human presence sensor, is 100% when the input fromthe human presence sensor indicates that the human being is present. 17.The machine-implemented method of claim 13, wherein: at least a secondone of the plurality of inputs is from a touch input device, thecorresponding estimated probability of the presence of the human being,with respect to the at least a second one of the plurality of inputs,deteriorates over time after the at least a second one of the pluralityof inputs provides an input indicating that the human being is present.18. The machine-implemented method of claim 13, wherein at least asecond one of the plurality of inputs is from an orientation sensor, andthe corresponding estimated probability of the presence of the humanbeing, with respect to the at least a second one of the plurality ofinputs, deteriorates over time after the at least a second one of theplurality of inputs provides an input indicating a change inorientation.
 19. The machine-implemented method of claim 13, wherein atleast a second one of the plurality of inputs is provided by anapplication, and the corresponding estimated probability of the presenceor the absence of the human being, with respect to the at least a secondone of the plurality of inputs, deteriorates over time after theapplication provides the at least a second one of the plurality ofinputs.
 20. The machine-implemented method of claim 13, wherein saidshort-range wireless transceiver is a Bluetooth-enabled device andwherein said Bluetooth-enabled device is paired with computing device,indicating the presence of the human being.